A Functional, Functorial Approach to the Model-View-Controller Software Architecture for Command-oriented Programs in ML
نویسنده
چکیده
We describe a functional, functorial approach to the modelview-controller software architecture for command-oriented programs in ML. In our approach, a controller’s algorithm is apparent; it doesn’t have to be mentally pieced together from a set of event handlers. Furthermore, what would be the state of a model (domain-specific part of the program) in an object-oriented setting becomes arguments to the functions of the controller in our setting. For us, a controller mediates between its view (user-interface) and model. The controller calls its view to get user input, and to display results to the user; it calls its model to do domain-specific work. To increase adaptability, a controller is an ML functor, parameterized by its model and view. One can write controller functors that work simultaneously with both terminaland graphical-based views, although concurrency is needed in order to write graphical-based views that are compatible with such functors. One can also write views that do scripting. Using a shared controller allows one to understand and reason about the program’s command-oriented aspects at a high-level of abstraction by focusing on the controller, as opposed to the multiple and more concrete views. Of particular note is the way we are able to allow computations of the model to be monitored and aborted by the user, via the view. Our approach makes much use of ML’s module system and higher-order, polymorphic functions, and we illustrate it with a case study of a complete application, written in Standard ML, and using Concurrent ML and the eXene X window system toolkit.
منابع مشابه
Veterinarians and dairy nutrition management: basic concepts and design-it-yourself—a veterinary-oriented ration evaluation program
Veterinarians increasingly play a major contributory role in dairy practice and management. Withincreasing importance of economical pressures, bioenvironmental limits and increasing demand for higherquality products, veterinarians are more involved in nutrition management and advice, both from aneconomical view of productivity and preventive aspects of veterinary medicine. The concept of food a...
متن کاملDeveloping Transit-oriented Strategies for Sanandaj City Center, Iran
Over recent decades, "Transit-oriented development" has been developed as a new approach based on sustainability concepts. This approach is mainly concerning coordinated action between land use planning and transportation planning which tries to create a clean, people friendly, livable, and dynamic community with growing local economy. Today, old urban centers face enormous challenges in terms ...
متن کاملDevelopment of a framework to evaluate service-oriented architecture governance using COBIT approach
Nowadays organizations require an effective governance framework for their service-oriented architecture (SOA) in order to enable them to use a framework to evaluate their current state governance and determine the governance requirements, and then to offer a suitable model for their governance. Various frameworks have been developed to evaluate the SOA governance. In this paper, a brief introd...
متن کاملاز پیاده سازی معماری سرویس گرا تا چابکی سازمان با رویکرد مدلسازی پویایی سیستم
SOA is type of architecture that used service to simplify integration activities and use the components for reusable. Companies to survive in the dynamic environment needed to strengthen their organizations through information systems and service-oriented architecture is a way for the integration and effectiveness of the use of information systems and achieve organizational agility. In this pap...
متن کاملProviding an Enterprise Architecture Framework Model for Laboratory Information Management Systems by Service Oriented Approach
Background and Aim: Laboratories are one of the most important scientific and research centers. Laboratory information management systems provide a platform for recording the information and collaborating between researchers. The main purpose of this study was suggesting an organizational architecture model of laboratory information management systems. Materials and Methods: This study was a ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007